package com.base.api.dto.selfOrder;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(description = "拼团确认付款请求参数")
public class PartakerConfirmPayDTO implements Serializable {
    @ApiModelProperty(value = "用户id")
    @NotBlank(message = "用户id不能为空")
    private String userId;

    @ApiModelProperty(value = "商品id")
    @NotNull(message = "商品id不能为空")
    private Integer commodityId;

    @ApiModelProperty(value = "数量")
    @Min(message = "最少购买数量为1", value = 1)
    private Integer number;

    @ApiModelProperty(value = "1.支付宝 2.微信 3.云闪付 4.奖励金,5金豆")
    @Range(min = 1, max = 5, message = "支付方式只能为1到5")
    private Integer payWay;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "收件人手机号")
    @NotBlank(message = "收件人手机号不能为空")
    private String recipientsMobile;

    @ApiModelProperty(value = "收件人姓名")
    @NotBlank(message = "收件人姓名不能为空")
    private String recipientsName;

    @ApiModelProperty(value = "收件人详细地址")
    @NotBlank(message = "收件人详细地址不能为空")
    private String recipientsAddress;

    @ApiModelProperty(value = "团长")
    private String regimental;
    @ApiModelProperty("参团订单号")
    private String teamOrderNo;
    @ApiModelProperty("权益礼包id")
    private String callnum;
}
